table 3 Rspec @tsubouchi
テストがないリポジトリにテストを入れる時はどうすればいいのか
・そもそもはじめにテストは書いていくべき。
・テストがないリポジトリはコードがきれいでないことがない場合が多いので、リファクタリング
・全体のテストを書いて行く。
全体をいきなり書くのは正直キツいと思うので不具合報告された内容の修正とその修正のテストを書くのが最初の一歩としてはいいのではないか?と思うluccafort.icon
・モデルのメソッドのみテストしている。
絶対落ちたらやばいやつはe2eのテストをかく
マスターデータはseedで入れる。一個一個のテストの度にマスターデータも作って消してを繰り返す必要がある。
factoryを書く際には全モデルで、作っておく。なので、modelを作った際には、基本的にfactoryを用意する。
テスト布教させる方法
自社サービス以外だとわからない。。。
テストの前提条件が巨大になる場合
前提条件を固定したい
fixtureじゃん
なるほどluccafort.icon*5
transient使えば FactoryBot.create :user, :with_login_historie みたいに1ユーザ5履歴作るみたいなことができる
let ばかりでなく before を使うべき
before が5行以上あったらおかしいのでは?
trait を活用できていない可能性を疑う
アプローチが違う
解決したい問題が違う、問題はツリー構造の問題。Perameterize Testは境界値テストがひたすら生えるイメージ。